package com.sky.common.zlm.resp;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;

/**
 * 媒体流信息实体类
 * 对应ZLM WebHook返回的流信息JSON结构
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class MediaStreamInfo {
    /**
     * 应用名
     */
    private String app;

    /**
     * 本协议观看人数
     */
    private Integer readerCount;

    /**
     * 总字节数
     */
    private Long totalBytes;

    /**
     * 观看总人数，包括hls/rtsp/rtmp/http-flv/ws-flv
     */
    private Integer totalReaderCount;

    /**
     * 协议 (rtsp, rtmp, etc.)
     */
    private String schema;

    /**
     * 流ID
     */
    private String stream;


    /**
     * 产生源类型编码
     * unknown = 0, rtmp_push=1, rtsp_push=2, rtp_push=3,
     * pull=4, ffmpeg_pull=5, mp4_vod=6, device_chn=7
     */
    private Integer originType;

    /**
     * 产生源类型字符串描述
     */
    private String originTypeStr;

    /**
     * 产生源的url
     */
    private String originUrl;

    /**
     * GMT unix系统时间戳，单位秒
     */
    private Long createStamp;

    /**
     * 存活时间，单位秒
     */
    private Long aliveSecond;

    /**
     * 数据产生速度，单位byte/s
     */
    private Long bytesSpeed;

    /**
     * 虚拟主机名
     */
    private String vhost;

    /**
     * hls是否录制
     */
    private Boolean isRecordingHLS;

    /**
     * MP4是否录制
     */
    private Boolean isRecordingMP4;

    /**
     * 参数
     */
    private String params;
}
